C程序

您所在的位置:网站首页 字符串数组 c语言 C程序

C程序

2023-12-06 01:07| 来源: 网络整理| 查看: 265

思路一:

1、建立数组str[  ]存输入的字符串,在建数组temp[ ];

2、比较str数组第一个元素与第二个元素是否为空格,

     若不是,则str的第一个元素元素赋值给’temp【0】,并将temp【1】赋值为空格,在进入下次循环;

     若是,则 跳出本次循环,进行下一循环;

3、考虑字符串间原本有多个空的情况

#include #include #define N 100 void EmbedSpace(char str[]); int main() { char str[N]; printf("please input string: "); gets(str); printf("output string: "); EmbedSpace(str); return 0; } void EmbedSpace(char str[]) { char temp[N]; int i,j; for(i = 0,j = 0 ; str[i] != '\0'; i++ ,j++) { if(str[i] != ' ' && str[i+1] != ' ') { temp[j] = str[i]; j++ ; temp[j] = ' '; } //考虑字符串原本有多个空的情况 else if((str[i] != ' ' && str[i+1] == ' ')||(str[i] == ' ' && str[i+1] != ' ')||(str[i] == ' ' && str[i+1] == ' ')) { temp[j] = str[i]; temp[j+1] = str[i+1]; } } temp[j] = '\0'; puts(temp); }

 

思路二: 字符依次后移填空格

#include #include #include #define N 80 void EmbedSpace(char str[]); int main() { char str[N]; printf("please input string: "); gets(str); EmbedSpace(str); return 0; } void EmbedSpace(char str[]) { int i,j,len; len = strlen(str); for(i=0 ; str[i+1] != '\0' ;i++) { if((str[i] != ' ')&& (str[i+1] != ' ')) { for(j = len+1; j > i+1 ;j--) str[j] = str[j-1]; str[i+1] = ' '; len++; } } puts(str); }

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3